It is widely known that the use of passwords, keycodes and other basic secret-based accesses for PCs and PC-based systems are vulnerable to physical and sometimes logical attacks. Inadequate security solutions have often, heretofore, been widely tolerated as the risks were perceived to be low and the proposed solutions were viewed as complex and intrusive to ease of use. However, whether a user's personal creation of a password is overly simplistic (e.g., birthdate) and can therefore be readily guessed, or a user's system comprises malware unknown to the user thereby making the user's use of an even more secure high-entropy password equally subject to attack, secure access to systems is at high risk in today's environment.
Traditional security mechanisms such as encryption keys, digital certificates and firewalls often are not as safe as first believed, as most of these mechanism store the security information (typically a key) on an unprotected hard drive and/or in unprotected memory. As a result, these traditional mechanisms may be targeted for attack by unauthorized users, due to their vulnerabilities.
Software attacks, viral applications, password sniffers, and targeted spoofing attempts often cause users to inadvertently surrender their secure information (such as passwords and other access data) from their systems that they had previously assumed was well-protected. Similarly, unauthorized changes to platform configurations, which thereby allow for access and misuse of system devices and their content, are on the rise. Additionally, a user's set of risks can readily vary from day to day without predictability, even though that same user's routine of utilizing the same computer, in the same location, does not vary. Both single factor (e.g., password) and dual factor (e.g., username and password) identity and security mechanisms, whether on the system-side or part of a peripheral device, remote or otherwise, are proving to be inadequate in today's environment.
It has also become the recent objective of certain semiconductor manufacturers to seek to develop specifications for architectures that promote trusted computing and security technologies across multiple platforms, peripherals and related devices. Atmel Corporation, along with others, sought to develop the TPM to conform to industry standard open specifications, issued by the non-for-profit corporation Trusted Computing Group™ (TCG). An objective of these standards is to increase security protections and reduce the vulnerability faced by hardware and software systems, particularly as these systems often face malicious or inadvertent corruption or attack. Functionally, by way of example, these standards provide for: (1) asymmetric functions for on-chip key pair generation using a hardware random number generator and signature and decryption operations, (2) secure storage of “hash” values representing platform configuration information in Platform Control Registers (PCRs), (3) endorsement key which can be used by an owner to anonymously establish that identity keys were generated in a TPM without identifying which TPM generated the identity key, and (4) initialization and management functions that allow an owner to take control of the system different from the user.
As a result of these efforts, TPMs have been developed and embedded into product offerings that implement these standards. For example, a TPM may be a silicon-based component affixed in a device that can store digital keys, certificates and passwords. As a further example, a TPM may also be a secure storage chip for unique Public Key Infrastructure (PKI) key pairs and credentials, and is often affixed to the motherboard of a PC. Typically each TPM chip is considered a fixed token that can be used to enhance user authentication, data, communications and platform security as the information it contains is more secure external software attacks. Typically, users are authenticated by cryptographic operations using keys or identities (IDs) stored in the TPM. The TPM is designed to be more resistant to logical and physical attacks.
Atmel produces a variety of products including security processors that protect the end user's privacy by providing tamper-proof storage and management of the user's identity, passwords and encryption keys. TPM chips use standard software interfaces and often work with other security methodologies to improve interoperability across multiple platforms.
However, ensuring the security of codes and access, physically and logically, even within this environment has its challenges. Despite the platform having a TPM, where it is possible to determine and authenticate whether trusted-state configuration parameters have been corrupted, activities external to TPM, such as authorization to initialize or to use keys stored on the TPM require external inputs, and thereby create an opportunity for malicious behavior and risk exposure.
Typically, the inadvertent or malicious detection of the codes and secrets at their origination is of greatest risk, be they passwords created by a user at their system or be they pre-loaded access codes provided from a third party in their environment. Unfortunately, the need to reduce the risk of security and integrity exposures to the user's systems while permitting the user to avail reasonable access methodologies with robust systems remains a concern. Thus, there is a continuing demand for further contributions in this area of technology.
Accordingly, there is a need to reduce the risk of exposed security and sacrificed integrity to the user's systems while permitting the user to avail reasonable access methodologies, and for the secure generation and use of accesses, codes and secrets for a robust system with remote devices that does not permit the inadvertent or malicious detection of the codes and secrets at their point of origination or during conveyance thereafter within the system. The present invention addresses this need.